package com.ruoyi.energy.service;

import com.ruoyi.common.core.web.domain.AjaxResult;
import com.ruoyi.energy.domain.QyEnterpriseType;

import java.util.List;

/**
 * 企业类型Service接口
 * 
 * @author cjie
 * @date 2021-11-06
 */
public interface IQyEnterpriseTypeService {
    /**
     * 查询企业类型
     * 
     * @param id 企业类型ID
     * @return 企业类型
     */
     QyEnterpriseType selectQyEnterpriseTypeById(String id);

    /**
     * 查询企业类型列表
     * 
     * @param qyEnterpriseType 企业类型
     * @return 企业类型集合
     */
     List<QyEnterpriseType> selectQyEnterpriseTypeList(QyEnterpriseType qyEnterpriseType);

    /**
     * 新增企业类型
     * 
     * @param qyEnterpriseType 企业类型
     * @return 结果
     */
     int insertQyEnterpriseType(QyEnterpriseType qyEnterpriseType);

    /**
     * 修改企业类型
     * 
     * @param qyEnterpriseType 企业类型
     * @return 结果
     */
     int updateQyEnterpriseType(QyEnterpriseType qyEnterpriseType);

    /**
     * 批量删除企业类型
     * 
     * @param ids 需要删除的企业类型ID
     * @return 结果
     */
     int deleteQyEnterpriseTypeByIds(String[] ids);

    /**
     * 删除企业类型信息
     * 
     * @param id 企业类型ID
     * @return 结果
     */
    AjaxResult deleteQyEnterpriseTypeById(String id);

    /**
     * 获取树形结构
     * @param qyEnterpriseType 企业类型
     * @return
     */
    AjaxResult selectTree(QyEnterpriseType qyEnterpriseType);


    /**
     * 是否存在子节点
     *
     * @param id 部门ID
     * @return 结果
     */
    boolean hasChildById(String id);

    /**
     * 查询企业类型是否存在企业
     * @param id
     * @return
     */
    boolean checkTypeIsUsed(String id);
}
